/**
 * @Author              : wanghw
 * @Date                : 2019/6/13 - 13:15
 * @PROJECT_NAME        : Examination
 * @FileName            : test
 * @Last Modified       : 2019/6/13 - 13:15 - wanghw
 */

import Vue from 'vue'
import Router from 'vue-router'
import Home from './default'

Vue.use(Router)

// 公共的路由部分 模块不存在 项目启动前自行配置
const commonRoutes = [
    // {path: '*', redirect: '/404'},
    // 重定向
    // {
    //     path: '/',
    //     redirect: '/home'
    // }
]
// 解决路由报错
const routerPush = Router.prototype.push
Router.prototype.push = function push(location) {
    return routerPush.call(this, location).catch(error => error)
}
// 分模块的路由，合并传入Router
let router = new Router({
    // base: process.env.BASE_URL,
    routes: commonRoutes.concat(Home)
})

// 导航守卫，非登录状态先登录
router.beforeEach((to, from, next) => {
    /* 路由拦截配置 */
    // 开发环境给路由挂默认参数 生产环境不处理
    // if (process.env.NODE_ENV === 'development') {
    //     let toQuery = JSON.parse(JSON.stringify(to.query));
    //     if (toQuery.userId != null) {
    //         next();
    //     } else {
    //         const _env = 1;
    //         if (_env === 1) { // 测试环境
    //             toQuery.userId = 'aac86030-8d72-4903-9148-149a08fa97d7';
    //             toQuery.appId = '55ad9fed-4fed-4a8a-9c77-28a0d2112424';
    //             next({
    //                 path: to.path,
    //                 query: toQuery
    //             });
    //         } else if (_env === 2) { // 测试正式环境
    //             toQuery.userId = '3abe56b5-131b-48b2-a150-52228b5b11c6';
    //             toQuery.appId = '14f85164-435c-4e99-9f24-29ad75207432';
    //             next({
    //                 path: to.path,
    //                 query: toQuery
    //             });
    //         } else {
    //             next();
    //         }
    //     }
    // } else {
    //     next();
    // }
    next();
})
export default router
